import java.util.*;
//字母异位词分组
//利用字符串排序后一样的原理，来分组
class Solution {
    public List<List<String>> groupAnagrams(String[] strs) {
        List<List<String>> ret=new ArrayList<>();
        Map<String,List<String>> map=new HashMap<>();
        for(String x:strs){
            //对字符串进行排序
            char[] tempArr=x.toCharArray();
            Arrays.sort(tempArr);
            String tempStr=new String(tempArr);
            List<String> list;
            if(map.containsKey(tempStr)){
                list=map.get(tempStr);
            }else{
                list=new ArrayList<>();
            }
            list.add(x);
            map.put(tempStr,list);
        }
        for(List<String> list:map.values()){
            ret.add(list);
        }
        return ret;
    }
}
